//
//  c++初步认识.cpp
//  博客代码
//
//  Created by 马鹏朔 on 2022/11/11.
//

//#include "c++初步认识.hpp"
//#include<stdio.h>
//#include<stdlib.h>
//namespace bit {
//int a =10;
//namespace xiaoma{
//    int rand =20;
//int Add(int x,int y)
//   {
//    return x+y;
//    }
//            }
//}
//using bit::a;
//using bit::xiaoma::Add;
//int main()
//{
//    int ret =Add(1,2);
//    printf("%d %d\n",a,ret);
//    return 0;
//}
//#include<iostream>
//using namespace std;
//int Add(int x=10,int y=20,int z=30)
//{
//    return x+y+z;
//}
//int main()
//{
//
//    int ret1=Add(); //可以不传参数
//    int ret2=Add(1); //可以传一个参数
//    int ret3=Add(1,2); //可以传两个参数
//    int ret4=Add(1,2,3); //可以传三个参数
//    //但不能像Add(,2,3)或者这样Add(1,,3)传参，必须是从左到右连续滴传参。
//              cout<<ret1<<endl<<ret2<<endl<<ret3<<endl<<ret4<<endl;
//
//}

//
//#include<iostream>
//using namespace std;
//int Add(int x,int y=20,int z=30)
//{
//    return x+y+z;
//}
// //半省参数必须从右向左依次赋值
//int Add(int x,int y)
//{
//    return x+y+z;
//}
////上面两种都是可以的
//int main()
//{
//    int ret=Add(1);
//    cout<<ret<<endl;
//    return 0;
//}


//
//#include<iostream>
//using namespace std;
//int Add(int x,int y,int z)
//{
//       return x+y+z;
//}
//
////参数个数不同
//int Add(int x,int y)
//{
//       return x+y;
//}
////参数类型不同
//double  Add(double x,double y)
//{
//       return x+y;
//}
////参数顺序不同
//double  Add(int x,double y)
//{
//       return x+y;
//}
//double  Add(double y, int x)
//{
//       return x+y;
//}
//int main()
//{
//     int  ret =Add(1,2,3);
//     int  ret1=Add(1,2);
//     double   ret2=Add(1.2,2.2);
//     double   ret3=Add(1,1.2);
//     double   ret4=Add(1.2,1);  //函数重载的作用就是一个函数可以实行多种功能
//    cout<<ret<<endl<<ret1<<endl<<ret2<<endl<<ret3<<endl<<ret4<<endl;
//    return 0;
//}


//
//#include<iostream>
//using namespace std;
//int main()
//{
//    int a=10;
//    int& ra=a;
//    printf("%p\n",&a);  //打印a的地址
//    printf("%p\n",&ra);    //打印ra的地址
//     return 0;
//}



//#include<iostream>
//using namespace std;
//void swap(int& x,int& y)
//{
//    int tmp=0;
//    tmp=x;
//    x=y;
//    y=tmp;
//}
//int main()
//{
//    int x=10;
//    int y=20;
//    swap (x,y);
//    cout<<x<<' '<<y<<endl;
//    return 0;
//}

//#include<iostream>
//using namespace std;
//int& Add(int x,int y)
//{
//    int ret=x+y;
//    return ret;
//}
//int main()
//{
//   int ret=Add(1,2);
//    cout<<ret<<endl;
//    return 0;
//}


//#include<iostream>
//using namespace std;
//int main()
//{
//    const int  a=10;
//
//
//    return 0;
//}

//
//#include<iostream>
//using namespace std;
//#define Add(x,y)   ((x)+(y))
//int main()
//{
//    int ret=Add(1,2);
//    cout<<ret<<endl;
//    return 0;
//}
//#include<iostream>
//using namespace std;
//inline int Add(int x,int y)
//{
//     return x+y;
//}
//int main()
//{
//    int ret =Add(1,2);
//    cout<<ret<<endl;
//    return 0;
//}
//
